home *** CD-ROM | disk | FTP | other *** search
- Tell GNU Emacs to go into -*- Mode: Text -*-
- Date: Tue Jan 15 19:35:30 1991
- Updated: Thu Jan 31 20:15:44 1991
-
-
- TeX 3.1 and Metafont 2.7
- for the
- Atari ST.
-
-
- This is the README for the C sources.
-
-
- A T T E N T I O N:
- ==================
- Before compiling please apply these last minute changes to all
- makefiles and the file common/texmf.c. Remove all instances of the
- optimizing switch '-fstrength-reduce' in the makefiles. When compiled
- with this switch the resulting DVI caused my DVI-driver to bomb. Also
- apply the following diff to common/texmf.c.
-
- ===== File: readme.src ====== CUT HERE ==============================
- *** i:/texmf.c Sun Jan 13 21:14:08 1991
- --- texmf.c Thu Jan 31 20:13:18 1991
- ***************
- *** 220,227 ****
- while (last < bufsize && (i = getc (f)) != EOF && i != '\n')
- buffer[last++] = i;
-
- - if (i == '\n' && buffer[last-1] == '\r')
- - last--;
- if (i == EOF && last == first)
- return false;
-
- --- 220,225 ----
- ***************
- *** 238,244 ****
- maxbufstack = last;
-
- /* Trim trailing whitespace. */
- ! while (last > first && (buffer[last-1] == ' ' || buffer[last-1] == '\t'))
- --last;
-
- /* Now, either `last==first' or `buffer[last-1] != ' '' (or \t). */
- --- 236,244 ----
- maxbufstack = last;
-
- /* Trim trailing whitespace. */
- ! while (last > first && (buffer[last-1] == ' ' ||
- ! buffer[last-1] == '\t' ||
- ! buffer[last-1] == '\r'))
- --last;
-
- /* Now, either `last==first' or `buffer[last-1] != ' '' (or \t). */
- ============================== CUT HERE ==============================
-
- This archive contains C sources, which were generated from the WEB and
- the WEB2C sources version 5.8a, which Karl Berry announced and
- released in a TeXhax digest, which appeared on my news site during
- November 1990. I make them available upon special request. I also only
- provide the sources for TeX and Metafont and NOT for the other utility
- programs.
-
- The WEB sources were converted on my Un*x box at work with the
- constant MAXLINES in file src-5.8a/web2c/splitup.c set to 1000.
- This conversion process produced C source files with an average size
- of about 30 k.
-
- The C sources compiled without any major problems with GNU-C v1.37.1,
- v1.38 and v1.39. Exceptions are listed below.
-
- Before I continue, let me shortly decribe the configuration of my ST.
- The machine is equipped with 2.5 meg memory. I've installed a 192 k
- ramdisk and a 200 k disk cache plus some auto folder programs. It's
- fair to say, that about 1/2 meg is lost to these programs. All
- temporary file are created in the ram disk.
-
- All TeX and Metafont C source files, except 3, could be compiled with
- this configuration. The following three files needed special
- attention, before they would compile.
-
- * itex.c
-
- When compiled with '-DINITEX' my ram disk would overflow while
- writing the temporary assembler file. Changing the 'TEMP'
- environment variable to a partition with enough free blocks
- circumvented this problem.
-
- * tex6.c
-
- To compile this file with the default 'CFLAGS' I had to strip my
- auto folder to the bare minimum to get maximum memory. I also had to
- compile the file by hand without the control of the 'make' utility.
- The reason, that the compilation of this file takes so much memory
- is the number of getc() functions calls (93). By default 'stdio.h'
- is setup to include the getc() routine as inline code. You can
- reduce the memory usage by compiling this file with the additional
- option '-D__NO_INLINE__'. With this defined this file also compiled
- with the default auto folder.
-
- * mf9.c
-
- The same restrictions as mentioned with 'tex6.c' apply to this file,
- except that you CAN'T reduce the memory requirements. The auto
- folder MUST be stripped to the bare minimum. There is NO way do
- decrease memory usage by giving some additional option. So, you are
- out of luck, when have only 2 megs.
-
- Also, if possible use a 'make' utility with a small memory usage. With
- GNU-Make v3.58 there is more than one file, which can't be compiled
- under the control of the makefile, because the compiler reports
- 'Virtual memory exhausted'. I personally use an very old version of
- the GNU-Make (v2.00), which is still from the time when the first
- versions of GNU-C (v1.23) appeared for the ST. This old version uses
- less memory.
-
- It should be possible to generate new TeX or Metafont versions with
- different internal buffer sizes by changing the respective contants in
- 'texd.h' or 'mfd.h', but I didn't test this. I alway regenerated the C
- files from the WEB sources, when I changed a constant. You certainly
- can't make HUGE TeX or Metafont of versions with the available defines
- in 'texd.h' or 'mfd.h'. To produce HUGE versions requires a rerun of
- the conversion process.
-
- The compilation of either TeX and Metafont takes about one hour for
- each.
-
- The general directory structure for the sources is as follows (the '/'
- in the first column marks a directory):
-
- defaults.h
- site.h
- / common/common.h
- /extra.c
- /extra.h
- /fileio.c
- /fileio.h
- /main.c
- /makefile
- /texmf.c
- /texmf.h
- / mf/coerce.h
- /fixcoerc.h
- /imf.c
- /makefile
- /memory.h
- /mf.poo
- /mf0.c
- ....
- /mf18.c
- /mfd.h
- / mf/mfwindow/hp2627.c
- /makefile
- /sun.c
- /tek.c
- /uniterm.c
- /x10.c
- /x11-xlib.c
- /x11-xt.c
- /x11.c
- / tex/coerce.h
- /fixcoerc.h
- /itex.c
- /makefile
- /memory.h
- /tex.poo
- /tex0.c
- ....
- /tex16.c
- /texd.h
-
- The archive for the TeX sources contains the following files:
-
- - readme.src
- - site.h
- - defaults.h
- - texsrc.lzh files to go into the tex directory
- - common.lzh " " " common directory
-
- The archive for the Metafont sources contains the following files:
-
- - readme.src
- - site.h
- - defaults.h
- - mfsrc.lzh files to go into the tex directory
- - mfwindow.lzh " " " mf/mfwindow directory
- - common.lzh " " " common directory
-
- The files readme.src, site.h, defaults.h and common.lzh are duplicated
- for convinience.
-
- --
- Regards
- Frank Ridderbusch
-
- Email:
- ridderbusch.kd@nixdorf.com (Amerika (North & South))
- ridderbusch.kd@sni.de (Rest of World)
-
- Snail Mail:
- Frank Ridderbusch
- Sander Str. 17
- W-4790 Paderborn
- Germany
-
-
-